var express = require('express')
var router = express.Router()
var Message = require('../models/message')

router.get('/message', (req, res) => {
  Message.find({})
    .sort({ update_at: -1 })
    .then(messages => {
      res.json(messages)
    })
    .catch(err => {
      res.json(err)
    })
})
// 通过ObjectId查询单个信息
router.get('/message/:id', (req, res) => {
  Message.findById(req.params.id)
    .then(message => {
      res.json(message)
    })
    .catch(err => {
      res.json(err)
    })
})


// 通过用户名查询单个信息 
router.get('/messages/:poster',function(req,res){
  Message.find({poster:decodeURI(req.params.poster)})
  .then(poster=>{
    res.json(poster)
   console.log(poster)
  
  })
  .catch(err =>{
    res.json(err)
  })
  
  
})
// 通过类型来获取信息
router.get('/messagess/:type',function(req,res){
  Message.find({type:decodeURI(req.params.type)})
  .then(type=>{
    res.json(type)
   console.log(type)
  
  })
  .catch(err =>{
    res.json(err)
  })
  
  
})

// 添加一个信息
router.post('/message', (req, res) => {
  //使用Message model上的create方法储存数据
  Message.create(req.body, (err, message) => {
    if (err) {
      res.json(err)
    } else {
      res.json(message)
    }
  })

})
//更新一个信息
router.put('/message/:id', (req, res) => {
  Message.findOneAndUpdate({ _id: req.params.id }
    , {
      $set: {
        title: req.body.title,
        rating: req.body.rating,
        poster: req.body.poster,
        introduction: req.body.introduction,
        
      }
    }, {
      new: true
    })
    .then(message => res.json(message))
    .catch(err => res.json(err))
})
// 增加属性
router.post('/message/:id', (req, res) => {
  Message.findOneAndUpdate({ _id: req.params.id }
    , {
      $set: {
       type: req.body.type,
      
        
      }
    }, {
      new: true
    })
    .then(message => res.json(message))
    .catch(err => res.json(err))
})
//删除一个信息
router.delete('/message/:id', (req, res) => {
  Message.findOneAndRemove({
    _id: req.params.id
  })
    .then(message => res.send(`删除成功:${message.title}`))
    .catch(err => res.json(err))
})

module.exports = router